import Vue from 'vue'
import moment from 'moment'

/**
 * 出口放箱管理状态
 * 状态
 * 0 新业务
 * 1 放单中
 * 2 已完成
 * 3 已拒绝
 * 4 没预配
 * 5 船期早
 * 6 明天放
 * 7 已退关
 * 8 等通知
 * 9 客户取消
 * 10 退单
 * 11 申请中
 * 12 爆仓
 * 13 有问题
 * 14 缺箱子
 * 15 换单中
 * */
Vue.filter('boxState', function (boxState) {
  let res = ''
  switch (boxState) {
    case '0':
      res = '新业务'
      break
    case '1':
      res = '放单中'
      break
    case '2':
      res = '已完成'
      break
    case '3':
      res = '已拒绝'
      break
    case '4':
      res = '没预配'
      break
    case '5':
      res = '船期早'
      break
    case '6':
      res = '明天放'
      break
    case '7':
      res = '已退关'
      break
    case '8':
      res = '等通知'
      break
    case '9':
      res = '客户取消'
      break
    case '10':
      res = '退单'
      break
    case '11':
      res = '申请中'
      break
    case '12':
      res = '爆仓'
      break
    case '13':
      res = '有问题'
      break
    case '14':
      res = '缺箱子'
      break
    case '15':
      res = '换单中'
      break
  }
  return res
})

/**
 * 年月日时分秒
 * */
Vue.filter('YYYYMMDDHHmmss', function (value) {
  return moment(value).format('YYYY年MM月DD日 HH:mm:ss')
})

/**
 * 业务员状态
 * state: 0: 未激活 1: 激活
 * */
Vue.filter('salespersonStatus', function (state) {
  return state === '0' ? '冻结' : state === '1' ? '激活' : state
})

/**
 * 费用类型
 * state: 0: 未激活 1: 激活
 * */
Vue.filter('sostStatus', function (value) {
  return value === '0' ? '否' : value === '1' ? '收客户费用' : value
})

/**
 * 费用状态
 * state: 0: 未激活 1: 激活
 * */
Vue.filter('activateNow', function (state) {
  return state === '0' ? '休眠' : state === '1' ? '激活' : state
})

/**
 * 性别
 * sex: 1: 男 2: 女
 * */
Vue.filter('salespersonGender', function (sex) {
  return sex === '1' ? '男' : sex === '2' ? '女' : sex
})

/**
 * 结算状态
 * state: 结算状态 0 未结清 1 全部 2 产生结算 3 结清
 * */
Vue.filter('moneyState', function (state) {
  return state === 0 ? '未结清' : state === 1 ? '全部' : state === 2 ? '产生结算' : state === 3 ? '结清' : state
})

/**
 * 客户端
 * state: 1电脑用户 2移动端 3电脑+移动端
 * */
Vue.filter('userState', function (state) {
  return state === '1' ? '电脑用户' : state === '2' ? '移动端' : state === '3' ? '电脑+移动端' : state
})

/**
 * 是否船公司费用
 * state: 0: 未激活 1: 激活
 * */
Vue.filter('whetherShipping', function (value) {
  return value === '0' ? '否' : value === '1' ? '是' : value
})

/**
 * 超出部分隐藏
 * */
Vue.filter('ellipsis', function (value) {
  if (!value) return ''
  if (value.length > 11) {
    return value.slice(0, 11) + '...'
  }
  return value
})
